122 research outputs found
Introduction to Programming Using Mobile Phones and MIT App Inventor
At the beginning of each year, we ask our new
undergraduate students in Computer Engineering if they have
ever developed a computer program. Surprisingly, the most
frequent answer is no. The few students who have attended
a Computer Science training module usually have some basic
programming notions; however, most of our students coming
straight from high school have never programmed. This lack
of basic programming skills represents a major drawback when
taking programming-related courses. This is especially true for
the course on Computer Organization, taught during the first
semester of the first year, as one of its main objectives is to
explain the processor architecture, and therefore a great part of
it revolves around programming in assembly language.
To tackle this lack of basic programming skills, a workshop
on mobile application programming using MIT App Inventor
is offered to freshmen. This workshop is highly welcomed and
positively received by the students, and we believe that it has
contributed to improving their performance on courses related to
programming, and in particular, on the Computer Organization
course
Multi-Armed Bandits for Spectrum Allocation in Multi-Agent Channel Bonding WLANs
While dynamic channel bonding (DCB) is proven to boost the capacity of wireless local area networks (WLANs) by adapting the bandwidth on a per-frame basis, its performance is tied to the primary and secondary channel selection. Unfortunately, in uncoordinated high-density deployments where multiple basic service sets (BSSs) may potentially overlap, hand-crafted spectrum management techniques perform poorly given the complex hidden/exposed nodes interactions. To cope with such challenging Wi-Fi environments, in this paper, we first identify machine learning (ML) approaches applicable to the problem at hand and justify why model-free RL suits it the most. We then design a complete RL framework and call into question whether the use of complex RL algorithms helps the quest for rapid learning in realistic scenarios. Through extensive simulations, we derive that stateless RL in the form of lightweight multi-armed-bandits (MABs) is an efficient solution for rapid adaptation avoiding the definition of broad and/or meaningless states. In contrast to most current trends, we envision lightweight MABs as an appropriate alternative to the cumbersome and slowly convergent methods such as Q-learning, and especially, deep reinforcement learning
Mobile Edge Vertical Applications Using ETSI MEC APIs and Sandbox
MEC Sandbox is an excellent tool that simulates wireless networks and deploys
ETSI Multi-access Edge Computing (MEC) APIs on top of the simulated wireless
network. In this demo, we consume these APIs using a decision engine (DE) to
scale a video-on-demand (VoD) application located on the network edge, assuming
that the average number of users is a good proxy of the demand. Specifically,
the developed DE uses the ETSI MEC Location API and retrieves the number of
users in a given zone. The DE then takes actions at the microservice scaling
level and executes them through a custom-made Kubernetes-based OpenAPI.Comment: A one-page version of this paper is accepted in the 2022 IEEE
Conference on Standards for Communications and Networking(CSCN)-Demo
submission
Towards Energy Efficient LPWANs through Learning-based Multi-hop Routing
Low-power wide area networks (LPWANs) have been identified as one of the top
emerging wireless technologies due to their autonomy and wide range of
applications. Yet, the limited energy resources of battery-powered sensor nodes
is a top constraint, especially in single-hop topologies, where nodes located
far from the base station must conduct uplink (UL) communications in high power
levels. On this point, multi-hop routings in the UL are starting to gain
attention due to their capability of reducing energy consumption by enabling
transmissions to closer hops. Nonetheless, a priori identifying energy
efficient multi-hop routings is not trivial due to the unpredictable factors
affecting the communication links in large LPWAN areas. In this paper, we
propose epsilon multi-hop (EMH), a simple reinforcement learning (RL) algorithm
based on epsilon-greedy to enable reliable and low consumption LPWAN multi-hop
topologies. Results from a real testbed show that multi-hop topologies based on
EMH achieve significant energy savings with respect to the default single-hop
approach, which are accentuated as the network operation progresses
Intent-Based Orchestration for Application Relocation in a 5G Cloud-native Platform
The need of mobile network operators for cost-effectiveness is driving 5G and
beyond networks towards highly flexible and agile deployments to adapt to
dynamic and resource-constrained scenarios while meeting a myriad of user
network stakeholders' requirements. In this setting, we consider that
zero-touch orchestration schemes based on cloud-native deployments equipped
with end-to-end monitoring capabilities provide the necessary technology mix to
be a solution candidate. This demonstration, built on top of an end-to-end
cloud-native 5G experimental platform with over-the-air transmissions, shows
how dynamic orchestration can relocate container-based end-user applications to
fulfil intent-based requirements. Accordingly, we provide an experimental
validation to showcase how the platform enables the desired flexible and agile
5G deployments
Animaciones interactivas para la enseñanza y aprendizaje de los protocolos de coherencia de cachés
Entre los objetivos formativos de los cursos avanzados
de arquitectura de computadores suele estar el de
que los estudiantes sean capaces de describir y analizar
el funcionamiento de los protocolos de coherencia
de cachés. Aunque dichos protocolos son relativamente
sencillos, es necesario analizar muchas
situaciones diferentes para entender cómo abordan
todos los detalles del problema que quieren resolver.
Lo que hace que sean complejos de explicar y de
comprender. Una herramienta que ilustrara gráficamente
el funcionamiento de dichos protocolos facilitarÃa
enormemente su enseñanza/aprendizaje.
Con objeto de mejorar la docencia de dicha materia,
hemos desarrollado tres animaciones interactivas
que muestran cómo funcionan tres de los protocolos
de coherencia de caché más frecuentemente utilizados.
Para cada protocolo, una serie de operaciones
de lectura/escritura ilustran todas las posibles situaciones
que pueden darse. Las animaciones permiten
avanzar y retroceder para poder entender/estudiar
mejor las acciones que tienen lugar en cada paso.SUMMARY: Among the educational objectives in advanced courses
of computers architecture there is usually one
that states that students should be able to describe
and analyze how the cache coherence protocols
work. Although these protocols are relatively simple,
it is necessary to analyze many different situations
to understand how they address all the details
of the problem they solve. This makes them complex
to be explained and to be understood. A tool
that illustrates graphically the operation of these protocols
should greatly facilitate the teaching/learning of these protocols.
With the aim of improving the teaching on this
subject, we have developed three interactive animations
that show how some of the most frequently
used cache coherence protocols work. For each protocol,
a sequence of read and write operations illustrates
all possible situations that can take place in
each protocol. The tool is interactive in that the
student can go forward and backward to understand/
study the different actions that occur at each
step.Peer Reviewe
¿Puedo programar mi móvil? Pero si acabo de llegar
Por sorprendente que parezca, cada vez que preguntamos a nuestros estudiantes recién matriculados en el Grado en IngenierÃa Informática si han programado alguna vez, la respuesta mayoritaria es que no. Los pocos que han estudiado formación profesional en informática suelen tener alguna noción, pero la mayor parte de los que han estudiado bachillerato, ninguna. Esta falta de competencias básicas de programación supone una desventaja en aquellas asignaturas relacionadas con esta materia. En nuestro grado, esta desventaja es especialmente evidente en la asignatura Estructura de computadores, de primer curso y primer semestre que, sin ser una asignatura de programación al uso, tiene por objeto que el estudiante adquiera competencias relacionadas con la arquitectura de un computador y, por tanto, con la programación en lenguaje ensamblador. Para suplir esta falta de base, se ha impartido un taller de programación para móviles con MIT App Inventor. Este taller ha tenido una gran aceptación, ha sido muy bien valorado por los estudiantes y consideramos que ha contribuido a mejorar los resultados de Estructura de computadores.Surprisingly, every time we ask the newly enrolled students in the Degree in Computer Engineering whether they have ever programmed, the majority answer is no. The few that have done a computer science vocational training module usually have some notion, but most of those who have done high school, none. This lack of basic programming skills is a disadvantage in those courses related to this matter. In our degree, this disadvantage is especially evident in the Computers Structure course, taught on the first year at the first semester. Although it is not a usual programming course, it requires the student to acquire skills related to computer architecture, and, therefore, to programming in assembly language. To address this lack of previous knowledge, a workshop on mobile programming has been taught using MIT App Inventor. This workshop has had a great acceptance, has been very well evaluated by the students, and we believe that has contributed to improve their results on the Computers Structure course
- …